<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2019/2/13
 * Time: 9:30
 */

namespace app\study\controller;


class FileLock
{
    //https://www.cnblogs.com/myvic/p/7703973.html ab工具 -n100表示请求总数为100 　-c10表示并发用户数为10
    public function index1()
    {
        $fp = fopen("file_lock.txt", "r");
        // 加锁
        if (flock($fp, LOCK_EX)) {
            sleep(10);
            echo 1;
            //执行完成解锁
            flock($fp, LOCK_UN);
        } else {
            echo 2;
        }
        //关闭文件
        fclose($fp);
    }

    public function index2()
    {
        $fp = fopen("file_lock.txt", "r");
        // 加锁（如果改成flock($fp, LOCK_EX | LOCK_NB)，demo2.php会直接返回2，否则会等待demo.php执行完返回1）
        if (flock($fp, LOCK_EX)) {
            echo 1;
        } else {
            echo 2;
        }
        //关闭文件
        fclose($fp);
    }
//https://www.cnblogs.com/yang-2018/p/10387744.html
    public function haha(){

    }
}